package com.xique.blelock.NetUtils;
/*
 * Copyright (c) 2015-2017, Shenzhen Deyi Technology Co., Ltd.
 */


import android.text.TextUtils;

/**
 * Fx框架的通用接口方法返回对象。包含
 * <ul>
 *   <li>success - success=false时，其笼统的含义是，本次接口调用没有达到预期的业务目的。</li>
 *   <li>code - 当success=true时，code的值总是为0，当success=false时，允许对code进行复杂业务约定，便于前端调用者清晰知道调用失败的原因。
 code字段设计为字符串类型，是为自定义业务错误码的格式留有余地，比如业务系统可以定义出“E2003”或”PR-001”类型的错误码。
 </li>
 *   <li>msg - 用于提示错误，这个字段的值应该对终端用户友好，常见于在前端采用浮层或Toast弹出的错误信息。</li>
 *   <li>detailMsg - 这个字段的值应该对开发人员友好，便于前端开发人员快速定位错误产生的原因，一般不应在界面中显示出来。当后台接口方法执行过程中有异常出现并被Fx框架捕获时，异常的详细信息将被写入到这个字段中</li>
 *   <li>data - 接口返回的标准业务数据</li>
 *   <li>extra - 当data返回的值不能满足要求时，允许以键值对形式将数据放在extra字段中，返回给前端。</li>
 * </ul>
 *
 * <p></p>
 *
 * @author Jim Yang
 * @since 1.0
 */
public class NetResult<T> {

    private boolean success = true;

    private String code = "200";

    private String message;

    private int status = 200;

    private String detailMsg;

    private T data;



    public boolean isSuccess() {

        return Integer.parseInt(code) == 10000;
    }

    public void setSuccess(boolean success) {
        this.success = success;
    }


    public int getStatus() {
        return status;
    }

    public void setStatus(int status) {
        this.status = status;
    }

    public String getDetailMsg() {
        return detailMsg;
    }

    public void setDetailMsg(String detailMsg) {
        this.detailMsg = detailMsg;
    }

    public T getData() {
        return data;
    }

    public void setData(T data) {
        this.data = data;
    }



    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

